package com.example.sportgoods.Service.impl;

import com.example.sportgoods.domain.Goods;
import com.example.sportgoods.mapper.GoodsMapper;
import com.example.sportgoods.Service.GoodsService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class GoodsServiceImpl implements GoodsService {

    private static final Logger log = LoggerFactory.getLogger(GoodsServiceImpl.class);

    // 自动注入GoodsMapper，用于数据库操作
    @Autowired
    private GoodsMapper goodsMapper;

    // 获取所有商品的业务方法，调用GoodsMapper的对应方法从数据库获取所有商品记录
    @Override
    public List<Goods> selectAllGoods() {
        return goodsMapper.getAllGoods();
    }

    // 根据商品id查询商品的业务方法，调用GoodsMapper的对应方法从数据库获取指定id的商品记录
    @Override
    public Goods selectGoodsById(Long id) {
        return goodsMapper.selectGoodsById(id);
    }

    // 更新商品信息的业务方法，调用GoodsMapper的对应方法将传入的商品对象信息更新到数据库中
    @Override
    public int updateGoods(Goods goods) {
        return goodsMapper.updateGoods(goods);
    }

    // 新增商品的业务方法，调用GoodsMapper的对应方法将传入的商品对象插入到数据库中
    @Override
    public void addGoods(Goods goods) {
        goodsMapper.insertGoods(goods);
    }

    // 根据商品id删除商品的业务方法，调用GoodsMapper的对应方法从数据库中删除指定id的商品记录
    @Override
    public void deleteGoodsById(Long id) {
        goodsMapper.deleteGoodsById(id);
    }
}